
a.out:     file format elf64-x86-64


Disassembly of section .init:

0000000000400580 <_init>:
  400580:	48 83 ec 08          	sub    $0x8,%rsp
  400584:	48 8b 05 6d 0a 20 00 	mov    0x200a6d(%rip),%rax        # 600ff8 <__gmon_start__>
  40058b:	48 85 c0             	test   %rax,%rax
  40058e:	74 05                	je     400595 <_init+0x15>
  400590:	e8 1b 00 00 00       	callq  4005b0 <__gmon_start__@plt>
  400595:	48 83 c4 08          	add    $0x8,%rsp
  400599:	c3                   	retq   

Disassembly of section .plt:

00000000004005a0 <.plt>:
  4005a0:	ff 35 62 0a 20 00    	pushq  0x200a62(%rip)        # 601008 <_GLOBAL_OFFSET_TABLE_+0x8>
  4005a6:	ff 25 64 0a 20 00    	jmpq   *0x200a64(%rip)        # 601010 <_GLOBAL_OFFSET_TABLE_+0x10>
  4005ac:	0f 1f 40 00          	nopl   0x0(%rax)

00000000004005b0 <__gmon_start__@plt>:
  4005b0:	ff 25 62 0a 20 00    	jmpq   *0x200a62(%rip)        # 601018 <__gmon_start__>
  4005b6:	68 00 00 00 00       	pushq  $0x0
  4005bb:	e9 e0 ff ff ff       	jmpq   4005a0 <.plt>

00000000004005c0 <_ZNSt8ios_base4InitC1Ev@plt>:
  4005c0:	ff 25 5a 0a 20 00    	jmpq   *0x200a5a(%rip)        # 601020 <_ZNSt8ios_base4InitC1Ev@GLIBCXX_3.4>
  4005c6:	68 01 00 00 00       	pushq  $0x1
  4005cb:	e9 d0 ff ff ff       	jmpq   4005a0 <.plt>

00000000004005d0 <__libc_start_main@plt>:
  4005d0:	ff 25 52 0a 20 00    	jmpq   *0x200a52(%rip)        # 601028 <__libc_start_main@GLIBC_2.2.5>
  4005d6:	68 02 00 00 00       	pushq  $0x2
  4005db:	e9 c0 ff ff ff       	jmpq   4005a0 <.plt>

00000000004005e0 <__cxa_atexit@plt>:
  4005e0:	ff 25 4a 0a 20 00    	jmpq   *0x200a4a(%rip)        # 601030 <__cxa_atexit@GLIBC_2.2.5>
  4005e6:	68 03 00 00 00       	pushq  $0x3
  4005eb:	e9 b0 ff ff ff       	jmpq   4005a0 <.plt>

00000000004005f0 <_ZNSt8ios_base4InitD1Ev@plt>:
  4005f0:	ff 25 42 0a 20 00    	jmpq   *0x200a42(%rip)        # 601038 <_ZNSt8ios_base4InitD1Ev@GLIBCXX_3.4>
  4005f6:	68 04 00 00 00       	pushq  $0x4
  4005fb:	e9 a0 ff ff ff       	jmpq   4005a0 <.plt>

0000000000400600 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>:
  400600:	ff 25 3a 0a 20 00    	jmpq   *0x200a3a(%rip)        # 601040 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@GLIBCXX_3.4>
  400606:	68 05 00 00 00       	pushq  $0x5
  40060b:	e9 90 ff ff ff       	jmpq   4005a0 <.plt>

Disassembly of section .text:

0000000000400610 <_start>:
  400610:	31 ed                	xor    %ebp,%ebp
  400612:	49 89 d1             	mov    %rdx,%r9
  400615:	5e                   	pop    %rsi
  400616:	48 89 e2             	mov    %rsp,%rdx
  400619:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
  40061d:	50                   	push   %rax
  40061e:	54                   	push   %rsp
  40061f:	49 c7 c0 10 08 40 00 	mov    $0x400810,%r8
  400626:	48 c7 c1 a0 07 40 00 	mov    $0x4007a0,%rcx
  40062d:	48 c7 c7 fd 06 40 00 	mov    $0x4006fd,%rdi
  400634:	e8 97 ff ff ff       	callq  4005d0 <__libc_start_main@plt>
  400639:	f4                   	hlt    
  40063a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000400640 <deregister_tm_clones>:
  400640:	b8 57 10 60 00       	mov    $0x601057,%eax
  400645:	55                   	push   %rbp
  400646:	48 2d 50 10 60 00    	sub    $0x601050,%rax
  40064c:	48 83 f8 0e          	cmp    $0xe,%rax
  400650:	48 89 e5             	mov    %rsp,%rbp
  400653:	77 02                	ja     400657 <deregister_tm_clones+0x17>
  400655:	5d                   	pop    %rbp
  400656:	c3                   	retq   
  400657:	b8 00 00 00 00       	mov    $0x0,%eax
  40065c:	48 85 c0             	test   %rax,%rax
  40065f:	74 f4                	je     400655 <deregister_tm_clones+0x15>
  400661:	5d                   	pop    %rbp
  400662:	bf 50 10 60 00       	mov    $0x601050,%edi
  400667:	ff e0                	jmpq   *%rax
  400669:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000400670 <register_tm_clones>:
  400670:	b8 50 10 60 00       	mov    $0x601050,%eax
  400675:	55                   	push   %rbp
  400676:	48 2d 50 10 60 00    	sub    $0x601050,%rax
  40067c:	48 c1 f8 03          	sar    $0x3,%rax
  400680:	48 89 e5             	mov    %rsp,%rbp
  400683:	48 89 c2             	mov    %rax,%rdx
  400686:	48 c1 ea 3f          	shr    $0x3f,%rdx
  40068a:	48 01 d0             	add    %rdx,%rax
  40068d:	48 d1 f8             	sar    %rax
  400690:	75 02                	jne    400694 <register_tm_clones+0x24>
  400692:	5d                   	pop    %rbp
  400693:	c3                   	retq   
  400694:	ba 00 00 00 00       	mov    $0x0,%edx
  400699:	48 85 d2             	test   %rdx,%rdx
  40069c:	74 f4                	je     400692 <register_tm_clones+0x22>
  40069e:	5d                   	pop    %rbp
  40069f:	48 89 c6             	mov    %rax,%rsi
  4006a2:	bf 50 10 60 00       	mov    $0x601050,%edi
  4006a7:	ff e2                	jmpq   *%rdx
  4006a9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000004006b0 <__do_global_dtors_aux>:
  4006b0:	80 3d b9 0a 20 00 00 	cmpb   $0x0,0x200ab9(%rip)        # 601170 <completed.6355>
  4006b7:	75 11                	jne    4006ca <__do_global_dtors_aux+0x1a>
  4006b9:	55                   	push   %rbp
  4006ba:	48 89 e5             	mov    %rsp,%rbp
  4006bd:	e8 7e ff ff ff       	callq  400640 <deregister_tm_clones>
  4006c2:	5d                   	pop    %rbp
  4006c3:	c6 05 a6 0a 20 00 01 	movb   $0x1,0x200aa6(%rip)        # 601170 <completed.6355>
  4006ca:	f3 c3                	repz retq 
  4006cc:	0f 1f 40 00          	nopl   0x0(%rax)

00000000004006d0 <frame_dummy>:
  4006d0:	48 83 3d 18 07 20 00 	cmpq   $0x0,0x200718(%rip)        # 600df0 <__JCR_END__>
  4006d7:	00 
  4006d8:	74 1e                	je     4006f8 <frame_dummy+0x28>
  4006da:	b8 00 00 00 00       	mov    $0x0,%eax
  4006df:	48 85 c0             	test   %rax,%rax
  4006e2:	74 14                	je     4006f8 <frame_dummy+0x28>
  4006e4:	55                   	push   %rbp
  4006e5:	bf f0 0d 60 00       	mov    $0x600df0,%edi
  4006ea:	48 89 e5             	mov    %rsp,%rbp
  4006ed:	ff d0                	callq  *%rax
  4006ef:	5d                   	pop    %rbp
  4006f0:	e9 7b ff ff ff       	jmpq   400670 <register_tm_clones>
  4006f5:	0f 1f 00             	nopl   (%rax)
  4006f8:	e9 73 ff ff ff       	jmpq   400670 <register_tm_clones>

00000000004006fd <main>:
  4006fd:	55                   	push   %rbp
  4006fe:	48 89 e5             	mov    %rsp,%rbp
  400701:	48 83 ec 10          	sub    $0x10,%rsp
  400705:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
  40070c:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
  400713:	00 
  400714:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
  40071b:	eb 20                	jmp    40073d <main+0x40>
  40071d:	8b 45 fc             	mov    -0x4(%rbp),%eax
  400720:	48 98                	cltq   
  400722:	c7 44 85 f0 00 00 00 	movl   $0x0,-0x10(%rbp,%rax,4)
  400729:	00 
  40072a:	be 30 08 40 00       	mov    $0x400830,%esi
  40072f:	bf 60 10 60 00       	mov    $0x601060,%edi
  400734:	e8 c7 fe ff ff       	callq  400600 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
  400739:	83 45 fc 01          	addl   $0x1,-0x4(%rbp)
  40073d:	83 7d fc 03          	cmpl   $0x3,-0x4(%rbp)
  400741:	7e da                	jle    40071d <main+0x20>
  400743:	b8 00 00 00 00       	mov    $0x0,%eax
  400748:	c9                   	leaveq 
  400749:	c3                   	retq   

000000000040074a <_Z41__static_initialization_and_destruction_0ii>:
  40074a:	55                   	push   %rbp
  40074b:	48 89 e5             	mov    %rsp,%rbp
  40074e:	48 83 ec 10          	sub    $0x10,%rsp
  400752:	89 7d fc             	mov    %edi,-0x4(%rbp)
  400755:	89 75 f8             	mov    %esi,-0x8(%rbp)
  400758:	83 7d fc 01          	cmpl   $0x1,-0x4(%rbp)
  40075c:	75 27                	jne    400785 <_Z41__static_initialization_and_destruction_0ii+0x3b>
  40075e:	81 7d f8 ff ff 00 00 	cmpl   $0xffff,-0x8(%rbp)
  400765:	75 1e                	jne    400785 <_Z41__static_initialization_and_destruction_0ii+0x3b>
  400767:	bf 71 11 60 00       	mov    $0x601171,%edi
  40076c:	e8 4f fe ff ff       	callq  4005c0 <_ZNSt8ios_base4InitC1Ev@plt>
  400771:	ba 28 08 40 00       	mov    $0x400828,%edx
  400776:	be 71 11 60 00       	mov    $0x601171,%esi
  40077b:	bf f0 05 40 00       	mov    $0x4005f0,%edi
  400780:	e8 5b fe ff ff       	callq  4005e0 <__cxa_atexit@plt>
  400785:	c9                   	leaveq 
  400786:	c3                   	retq   

0000000000400787 <_GLOBAL__sub_I_main>:
  400787:	55                   	push   %rbp
  400788:	48 89 e5             	mov    %rsp,%rbp
  40078b:	be ff ff 00 00       	mov    $0xffff,%esi
  400790:	bf 01 00 00 00       	mov    $0x1,%edi
  400795:	e8 b0 ff ff ff       	callq  40074a <_Z41__static_initialization_and_destruction_0ii>
  40079a:	5d                   	pop    %rbp
  40079b:	c3                   	retq   
  40079c:	0f 1f 40 00          	nopl   0x0(%rax)

00000000004007a0 <__libc_csu_init>:
  4007a0:	41 57                	push   %r15
  4007a2:	41 89 ff             	mov    %edi,%r15d
  4007a5:	41 56                	push   %r14
  4007a7:	49 89 f6             	mov    %rsi,%r14
  4007aa:	41 55                	push   %r13
  4007ac:	49 89 d5             	mov    %rdx,%r13
  4007af:	41 54                	push   %r12
  4007b1:	4c 8d 25 20 06 20 00 	lea    0x200620(%rip),%r12        # 600dd8 <__frame_dummy_init_array_entry>
  4007b8:	55                   	push   %rbp
  4007b9:	48 8d 2d 28 06 20 00 	lea    0x200628(%rip),%rbp        # 600de8 <__init_array_end>
  4007c0:	53                   	push   %rbx
  4007c1:	4c 29 e5             	sub    %r12,%rbp
  4007c4:	31 db                	xor    %ebx,%ebx
  4007c6:	48 c1 fd 03          	sar    $0x3,%rbp
  4007ca:	48 83 ec 08          	sub    $0x8,%rsp
  4007ce:	e8 ad fd ff ff       	callq  400580 <_init>
  4007d3:	48 85 ed             	test   %rbp,%rbp
  4007d6:	74 1e                	je     4007f6 <__libc_csu_init+0x56>
  4007d8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
  4007df:	00 
  4007e0:	4c 89 ea             	mov    %r13,%rdx
  4007e3:	4c 89 f6             	mov    %r14,%rsi
  4007e6:	44 89 ff             	mov    %r15d,%edi
  4007e9:	41 ff 14 dc          	callq  *(%r12,%rbx,8)
  4007ed:	48 83 c3 01          	add    $0x1,%rbx
  4007f1:	48 39 eb             	cmp    %rbp,%rbx
  4007f4:	75 ea                	jne    4007e0 <__libc_csu_init+0x40>
  4007f6:	48 83 c4 08          	add    $0x8,%rsp
  4007fa:	5b                   	pop    %rbx
  4007fb:	5d                   	pop    %rbp
  4007fc:	41 5c                	pop    %r12
  4007fe:	41 5d                	pop    %r13
  400800:	41 5e                	pop    %r14
  400802:	41 5f                	pop    %r15
  400804:	c3                   	retq   
  400805:	90                   	nop
  400806:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
  40080d:	00 00 00 

0000000000400810 <__libc_csu_fini>:
  400810:	f3 c3                	repz retq 

Disassembly of section .fini:

0000000000400814 <_fini>:
  400814:	48 83 ec 08          	sub    $0x8,%rsp
  400818:	48 83 c4 08          	add    $0x8,%rsp
  40081c:	c3                   	retq   
